With rapid growth of mobile data transfer over a high-speed communication network such as 3G or 4G cellular services, authenticating, load balancing, and controlling such data transfer become increasingly difficult and complicated. A conventional network layout includes Internet, LAN (local area network), and wireless networks having hundreds of network devices such as access switches, routers, and bridges for facilitating data delivery from source devices to destination devices. Authenticating and transferring massive amount of data efficiently between wireless portable devices such as smart phones and/or laptops over a typical and/or standard network becomes increasingly challenging.
In a multi-slot network gateway such as an LTE/GGSN (long term evolution/a gateway GPRS support node) gateway, subscriber sessions are distributed across the slots for load sharing. To handle mandatory IE (information element) in creating session and PDP (packet data protocol) request, a conventional approach for load sharing is to hash IMSI(s) (international mobile subscriber identity) to determine the next slot(s) for hosting the subscriber session(s). To expand system capacity, additional line cards may be inserted or plugged into empty slots in a multi-slot chassis using a plug-and-play mechanism whereby rebooting of the system to activate newly inserted line card(s) is not necessary.
A problem, however, associated with the conventional load sharing approach is that using the traditional IMSI hashing method to identify slots often results in session drop. For example, in an N slots chassis (where N can be any integer between 1<=N<=12) wherein each slot is capable of supporting up to one (1) million subscriber sessions. Adding a new line card to an empty slot may still drop subscriber sessions partially because of lack of load balancing. For instance, assuming IMSIs are randomly distributed, a conventional IMSI hash generates a distributed 1/(N+1) million subscribers to every active slot regardless of their current capacity. If a line card is plugged into N+1th slot, the original active slots (1, 2 . . . N) may drop new subscriber sessions because they are already at maximum capacity. As such, while 1/(N+1) million subscribers sessions may be processed and handled successfully by the N+1th slot, N/(N+1) million subscribers' sessions may be dropped by the other slots (1, 2, . . . , N).
Another problem associated with the conventional load sharing approach is that active slots reach their maximum capacity at different pace and time. Although IMSIs are randomly distributed and hashed, all available cards are not necessary to be filled up at the same time. For instance, if slot one (1) reaches its maximum capacity, any further session creation requests will be dropped, although slots other than slot one have not reached their maximum limit yet.